\hypertarget{classsc2_1_1_control_interface}{}\section{sc2\+:\+:Control\+Interface Class Reference}
\label{classsc2_1_1_control_interface}\index{sc2\+::\+Control\+Interface@{sc2\+::\+Control\+Interface}}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_ab90c8107014b8da21ba1d88fdb35aada}\label{classsc2_1_1_control_interface_ab90c8107014b8da21ba1d88fdb35aada}} 
virtual \hyperlink{classsc2_1_1_proto_interface}{Proto\+Interface} \& {\bfseries Proto} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a2e8bb94501a1772bfd98f8feb45180d4}\label{classsc2_1_1_control_interface_a2e8bb94501a1772bfd98f8feb45180d4}} 
virtual bool {\bfseries Connect} (const std\+::string \&address, int port, int timeout\+\_\+ms)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_afc307e6dc47a1cbbeb47055b199fe3e1}\label{classsc2_1_1_control_interface_afc307e6dc47a1cbbeb47055b199fe3e1}} 
virtual bool {\bfseries Remote\+Save\+Map} (const void $\ast$data, int data\+\_\+size, std\+::string remote\+\_\+path)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a4cd74e4ecacb4fad4aa35b749fd03863}\label{classsc2_1_1_control_interface_a4cd74e4ecacb4fad4aa35b749fd03863}} 
virtual bool {\bfseries Create\+Game} (const std\+::string \&map\+\_\+path, const std\+::vector$<$ \hyperlink{structsc2_1_1_player_setup}{Player\+Setup} $>$ \&players, bool realtime)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a4a2e65b28281bfc5024a62f1a4fba99e}\label{classsc2_1_1_control_interface_a4a2e65b28281bfc5024a62f1a4fba99e}} 
virtual bool {\bfseries Request\+Join\+Game} (\hyperlink{structsc2_1_1_player_setup}{Player\+Setup} setup, const \hyperlink{structsc2_1_1_interface_settings}{Interface\+Settings} \&settings, const \hyperlink{structsc2_1_1_ports}{Ports} \&ports=\hyperlink{structsc2_1_1_ports}{Ports}())=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_adddde8ba93c8a71d3af5cf38e83e7e9e}\label{classsc2_1_1_control_interface_adddde8ba93c8a71d3af5cf38e83e7e9e}} 
virtual bool {\bfseries Wait\+Join\+Game} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_ab4fbb92be4e178ab662770155c7b0cd0}\label{classsc2_1_1_control_interface_ab4fbb92be4e178ab662770155c7b0cd0}} 
virtual bool {\bfseries Request\+Leave\+Game} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a9858c7bc4cf9485e958d96e518bd5268}\label{classsc2_1_1_control_interface_a9858c7bc4cf9485e958d96e518bd5268}} 
virtual bool {\bfseries Poll\+Leave\+Game} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_ac4051c302ac0aff7892b7b3dac834bff}\label{classsc2_1_1_control_interface_ac4051c302ac0aff7892b7b3dac834bff}} 
virtual bool {\bfseries Step} (int count=1)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_afdceac1202a0160a4bb8bcea6ab227c1}\label{classsc2_1_1_control_interface_afdceac1202a0160a4bb8bcea6ab227c1}} 
virtual bool {\bfseries Wait\+Step} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a3e9f1c13939a03abccfc73191cc7fdcf}\label{classsc2_1_1_control_interface_a3e9f1c13939a03abccfc73191cc7fdcf}} 
virtual bool {\bfseries Save\+Replay} (const std\+::string \&path)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a98c730f6414edaa5166890dede1fe83c}\label{classsc2_1_1_control_interface_a98c730f6414edaa5166890dede1fe83c}} 
virtual bool {\bfseries Ping} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a02fe1bf89ffb788392bf7707ba9fc049}\label{classsc2_1_1_control_interface_a02fe1bf89ffb788392bf7707ba9fc049}} 
virtual Game\+Response\+Ptr {\bfseries Wait\+For\+Response} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a869db0749b2f5db41731886cc7fe9d87}\label{classsc2_1_1_control_interface_a869db0749b2f5db41731886cc7fe9d87}} 
virtual void {\bfseries Set\+Process\+Info} (const \hyperlink{structsc2_1_1_process_info}{Process\+Info} \&pi)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a190f45b9169d5e17cdf48cc906bd70e3}\label{classsc2_1_1_control_interface_a190f45b9169d5e17cdf48cc906bd70e3}} 
virtual const \hyperlink{structsc2_1_1_process_info}{Process\+Info} \& {\bfseries Get\+Process\+Info} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a7856754a90ef19fce1c37d532940cc70}\label{classsc2_1_1_control_interface_a7856754a90ef19fce1c37d532940cc70}} 
virtual App\+State {\bfseries Get\+App\+State} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a9cb258851dc5ab3ac7abe7bd817c9531}\label{classsc2_1_1_control_interface_a9cb258851dc5ab3ac7abe7bd817c9531}} 
virtual S\+C2\+A\+P\+I\+Protocol\+::\+Status {\bfseries Get\+Last\+Status} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a334adf0a34284e32833554fa189d9746}\label{classsc2_1_1_control_interface_a334adf0a34284e32833554fa189d9746}} 
virtual bool {\bfseries Is\+In\+Game} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a8b00eb5fe681665c39855cc3b481ed92}\label{classsc2_1_1_control_interface_a8b00eb5fe681665c39855cc3b481ed92}} 
virtual bool {\bfseries Is\+Finished\+Game} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a4bc92e6d97dbe3bd91c93bdf4a450155}\label{classsc2_1_1_control_interface_a4bc92e6d97dbe3bd91c93bdf4a450155}} 
virtual bool {\bfseries Is\+Ready\+For\+Create\+Game} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a470cbcfd519ee228c024a9b59a9bbb74}\label{classsc2_1_1_control_interface_a470cbcfd519ee228c024a9b59a9bbb74}} 
virtual bool {\bfseries Has\+Response\+Pending} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a4c66296192ffa3e1ba8c3ad2a17d8380}\label{classsc2_1_1_control_interface_a4c66296192ffa3e1ba8c3ad2a17d8380}} 
virtual bool {\bfseries Get\+Observation} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_aa6f27ad05d20d610c2d4e5b70fc68b49}\label{classsc2_1_1_control_interface_aa6f27ad05d20d610c2d4e5b70fc68b49}} 
virtual bool {\bfseries Poll\+Response} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_aa8bb71f36fd5106eb21bbceb1ecedf4d}\label{classsc2_1_1_control_interface_aa8bb71f36fd5106eb21bbceb1ecedf4d}} 
virtual bool {\bfseries Consume\+Response} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a03c1b68afb1521abf804d2a120f91880}\label{classsc2_1_1_control_interface_a03c1b68afb1521abf804d2a120f91880}} 
virtual bool {\bfseries Issue\+Events} (const std\+::vector$<$ Tag $>$ \&commands=\{\})=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a251ee28b1676960c086dc748c52723a3}\label{classsc2_1_1_control_interface_a251ee28b1676960c086dc748c52723a3}} 
virtual void {\bfseries On\+Game\+Start} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_aac30977133be8ffe2a749a920149b5d3}\label{classsc2_1_1_control_interface_aac30977133be8ffe2a749a920149b5d3}} 
virtual void {\bfseries Dump\+Proto\+Usage} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_ab3e7b964d0f7e90cc239e5997b09b5c4}\label{classsc2_1_1_control_interface_ab3e7b964d0f7e90cc239e5997b09b5c4}} 
virtual void {\bfseries Error} (\hyperlink{sc2__client_8h_ac7d3e3694a208204e099f04c1e5eded0}{Client\+Error} error, const std\+::vector$<$ std\+::string $>$ \&errors=\{\})=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a0f3a503c5e2ed951eed1774866a0280f}\label{classsc2_1_1_control_interface_a0f3a503c5e2ed951eed1774866a0280f}} 
virtual void {\bfseries Error\+If} (bool condition, \hyperlink{sc2__client_8h_ac7d3e3694a208204e099f04c1e5eded0}{Client\+Error} error, const std\+::vector$<$ std\+::string $>$ \&errors=\{\})=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_ac033fdc8fb4d4aa50a174b6d8870a143}\label{classsc2_1_1_control_interface_ac033fdc8fb4d4aa50a174b6d8870a143}} 
virtual const std\+::vector$<$ \hyperlink{sc2__client_8h_ac7d3e3694a208204e099f04c1e5eded0}{Client\+Error} $>$ \& {\bfseries Get\+Client\+Errors} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_ac26497e85a0dc55ae82270f0f50d5f03}\label{classsc2_1_1_control_interface_ac26497e85a0dc55ae82270f0f50d5f03}} 
virtual const std\+::vector$<$ std\+::string $>$ \& {\bfseries Get\+Protocol\+Errors} () const =0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a8873d48c9aea76578115f4d5d1fbdbf5}\label{classsc2_1_1_control_interface_a8873d48c9aea76578115f4d5d1fbdbf5}} 
virtual void {\bfseries Clear\+Client\+Errors} ()=0
\item 
\mbox{\Hypertarget{classsc2_1_1_control_interface_a0b7042768e8b428f867b9069281e8c66}\label{classsc2_1_1_control_interface_a0b7042768e8b428f867b9069281e8c66}} 
virtual void {\bfseries Clear\+Protocol\+Errors} ()=0
\end{DoxyCompactItemize}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
include/sc2api/sc2\+\_\+control\+\_\+interfaces.\+h\end{DoxyCompactItemize}
